package cn.org.xwb.bookmall.model.vo;

import cn.org.xwb.bookmall.model.constant.ProductConst;
import cn.org.xwb.common.encrypt.annotation.rsa.RsaDe;
import cn.org.xwb.common.valid.annotation.nu.NotNull;
import cn.org.xwb.common.valid.annotation.str.StrMaxLen;
import cn.org.xwb.common.valid.annotation.str.StrNotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ProductConditionVo {

    @NotNull
    private Integer current;

    @NotNull
    private Integer pageSize;

    @RsaDe
    @StrMaxLen(ProductConst.PRODUCT_TITLE_MAX_LEN)
    private String title;

    private Long category;

    private Long categorySub;

    @RsaDe
    @StrMaxLen(ProductConst.PRODUCT_DELIVERY_MAX_LEN)
    private String delivery;

    private Boolean freight;

    @RsaDe
    @StrMaxLen(ProductConst.PRODUCT_LABEL_NAME_MAX_LEN)
    private String label;

    @RsaDe
    @StrMaxLen(ProductConst.PRODUCT_PARAM_NAME_MAX_LEN)
    private String param;

    /**
     * 是否删除
     */
    private Boolean isRemove;

    /**
     * 图书编码
     */
    @RsaDe
    @StrMaxLen(ProductConst.PRODUCT_CODE_MAX_LEN)
    private String code;

}
